Conventionally, there is a technology for, when an update is available for an application executed by an information processing apparatus, transmitting data (e.g., a patch file and the like) for updating the application to the information processing apparatus via a network.
An application can be provided by a method of providing the application from a server via a network, or a method of providing the application using a portable storage medium. In such a case where the application is provided using the storage medium, it is burdensome for a developer to create a program of the application to be stored in the storage medium.
Therefore, the present specification discloses an information processing system, an information processing apparatus which are capable of easily providing an application using a storage medium, a storage medium having stored therein an information processing program, a method of executing the application, and a storage medium having stored therein data of the application.
(1) An example of an information processing system described in the present specification includes a portable storage medium having stored therein a program of an application and an information processing apparatus capable of executing the application. The storage medium stores first data which is a program or data forming at least a part of the application and second data which is a program or data forming a part of the same application formed by the first data.
The information processing apparatus includes an install processing unit and an execution unit. The install processing unit reads the second data from the storage medium and installs the second data in the information processing apparatus. The execution unit starts and executes the application based on the first data stored in the storage medium and the installed second data.
The above “execution unit” may execute the application using the first data and the installed second data as in one exemplary embodiment described below, or may start an application using the first data and execute the application using the second data as in a modification described below.
According to the configuration of (1) described above, the storage medium stores the first data and the second data, and the information processing apparatus installs the second data and executes the application. Thus, a program of the application can be created simply by storing the first data and the second data in the storage medium, and this allows the workload on the developer of the application to be reduced. As a result, the application can be provided easily using the storage medium.
(2) The storage medium may store the program of the application as the first data and stores a program or data for making additions and/or changes to the program as the second data.
According to the configuration of (2) described above, the program or data for making additions and/or changes to the program of the first data is defined as the second data. Thus, in a case such as where the application is upgraded using the second data, the application into which the update has been reflected can be provided easily by the storage medium. For example, when a patch for upgrading the application is provided in a server, the workload on the developer can be reduced by using the patch as the second data.
(3) When a storage unit of the information processing apparatus does not have free data space for installing the second data, the execution unit may start and execute the application without using the second data but using the first data stored in the storage medium.
According to the configuration of (3) described above, even when the second data cannot be installed in the information processing apparatus, a user can use the application. Further, the workload on the developer can be reduced by intentionally not using the second data stored in the storage medium.
(4) The first data may be a program common to respective versions of the application. Further, the second data may be a program or data which differs for each version of the application.
According to the configuration of (4) described above, when the application is changed (upgraded) for a plurality of times, the developer can easily create the data of the application to be stored in the storage medium.
(5) The first data may be an initial version of the program of the application. Further, the second data may be patch data for upgrading the program of the first data.
According to the configuration of (5) described above, when the original program is upgraded using the patch data, the developer can easily create the data of the application to be stored in the storage medium.
(6) The execution unit may execute the application under a condition that the first data is referable or usable and execute the application using the second data together with the first data.
According to the configuration of (6) described above, the second data can be executed in the information processing apparatus under the condition that the second data is used together with the first data. Accordingly, even when the second data is illegally installed in another information processing apparatus, the application cannot be used without the storage medium (without the first data). Thus, according to the configuration of (6) described above, it is possible to prevent the application from being used illegally in a plurality of information processing apparatuses.
(7) The execution unit may enable start of the application under a condition that the first data is stored in the storage medium, and execute the application using the installed second data.
According to the configuration of (7) described above, the application program can be created more easily as compared to the case where data is read, during execution of the application, from both the storage unit in the information processing apparatus and the storage medium. Thus, the workload on the developer of the application can be reduced. Further, because the first data need not be read from the storage medium during the execution of the application, the information processing apparatus can perform the information processing concerning the application at high speed.
(8) The storage medium may be detachably attached to the information processing apparatus.
According to the configuration of (8) described above, the application can be provided to the information processing apparatus by means of the detachable storage medium.
(9) The information processing apparatus may further include a communication unit which obtains, when the second data is not installed, at least the same data as the second data from a predetermined server via a network. The install processing unit may install, when the second data is not installed, at least the data obtained from the server in the information processing apparatus.
According to the configuration of (9) described above, because the second data provided by the storage medium is the same as that provided by the server, the workload on the developer can be reduced.
(10) Another example of the information processing system described in the present specification is an information processing system capable of: accessing a portable storage medium having stored therein first data which is a program of an application; and executing the application. The information processing system includes a first obtaining unit, a second obtaining unit, and an execution unit. The first obtaining unit obtains, when second data which is a program or data for making additions and/or changes to the program of the first data can be obtained from a predetermined server via a network, the second data from the predetermined server. The second obtaining unit obtains, when the second data is stored in the storage medium, the second data from the storage medium. The execution unit starts and executes the application based on the first data stored in the storage medium and the obtained second data.
According to the configuration of (10) described above, similarly to the configuration of (1) described above, the workload on the developer of the application can be reduced, and the application can be provided easily using the storage medium. Further, because the second data provided by the storage medium is the same as that provided by the server, the developer need not create data for the storage medium. According to the configuration of (10) described above, the workload on the developer of the application can be reduced also by this reason. Further, according to the configuration of (10) described above, it is possible to increase opportunities for the information processing apparatus to obtain the second data, thereby allowing the user to more easily use the application after being updated.
(11) Further, an example of the information processing apparatus disclosed in the present specification is an information processing apparatus capable of executing a program of an application stored in a portable storage medium. The storage medium stores the program of the application and expansion data for making additions and/or changes to the application. The information processing apparatus includes an install processing unit and an execution unit. The install processing unit reads the expansion data from the storage medium and installs the expansion data in the information processing apparatus. The execution unit starts and executes the application based on the program of the application stored in the storage medium and the installed expansion data.
It is noted that the present specification discloses an information processing apparatus having the same functions as those of the information processing apparatuses in the information processing systems in the above (1) to (10), and discloses an information processing program which causes a computer to perform processes in the information processing apparatus. Furthermore, the present specification discloses a method of executing an application which is executed in the above (1) to (10). Still further, the present specification discloses a storage medium equivalent to that in the information processing systems in the above (1) to (9).
According to the information processing system, information processing apparatus, storage medium having stored therein an information processing program, method of executing an application, and storage medium having stored therein data of the application described above, the first data and the second data are stored in the storage medium, and the information processing apparatus installs the second data and executes the application. Thereby, the workload on the developer of the application can be reduced. As a result, it is possible to provide the application easily using the storage medium.
These and other objects, features, aspects and advantages of the exemplary embodiment will become more apparent from the following detailed description when taken in conjunction with the accompanying drawings.